#!/usr/bin/env bash

# This file is sourced when running various Monkey programs.
# Copy it as monkey-env.sh and edit that to configure Monkey for your site.

# Options read when launching programs locally with
# ./bin/run-example or ./bin/monkey-submit
# - HADOOP_CONF_DIR, to point Monkey towards Hadoop configuration files
# - MONKEY_LOCAL_IP, to set the IP address Monkey binds to on this node
# - MONKEY_PUBLIC_DNS, to set the public dns name of the driver program
# - MONKEY_CLASSPATH, default classpath entries to append

# Options read by executors and drivers running inside the cluster
# - MONKEY_LOCAL_IP, to set the IP address Monkey binds to on this node
# - MONKEY_PUBLIC_DNS, to set the public DNS name of the driver program
# - MONKEY_CLASSPATH, default classpath entries to append
# - MONKEY_LOCAL_DIRS, storage directories to use on this node for shuffle and RDD data
# - MESOS_NATIVE_JAVA_LIBRARY, to point to your libmesos.so if you use Mesos

# Options read in YARN client mode
# - HADOOP_CONF_DIR, to point Monkey towards Hadoop configuration files
# - MONKEY_EXECUTOR_INSTANCES, Number of executors to start (Default: 2)
# - MONKEY_EXECUTOR_CORES, Number of cores for the executors (Default: 1).
# - MONKEY_EXECUTOR_MEMORY, Memory per Executor (e.g. 1000M, 2G) (Default: 1G)
# - MONKEY_DRIVER_MEMORY, Memory for Driver (e.g. 1000M, 2G) (Default: 1G)

# Options for the daemons used in the standalone deploy mode
# - MONKEY_MASTER_IP, to bind the master to a different IP address or hostname
# - MONKEY_MASTER_PORT / MONKEY_MASTER_WEBUI_PORT, to use non-default ports for the master
# - MONKEY_MASTER_OPTS, to set config properties only for the master (e.g. "-Dx=y")
# - MONKEY_WORKER_CORES, to set the number of cores to use on this machine
# - MONKEY_WORKER_MEMORY, to set how much total memory workers have to give executors (e.g. 1000m, 2g)
# - MONKEY_WORKER_PORT / MONKEY_WORKER_WEBUI_PORT, to use non-default ports for the worker
# - MONKEY_WORKER_INSTANCES, to set the number of worker processes per node
# - MONKEY_WORKER_DIR, to set the working directory of worker processes
# - MONKEY_WORKER_OPTS, to set config properties only for the worker (e.g. "-Dx=y")
# - MONKEY_DAEMON_MEMORY, to allocate to the master, worker and history server themselves (default: 1g).
# - MONKEY_HISTORY_OPTS, to set config properties only for the history server (e.g. "-Dx=y")
# - MONKEY_SHUFFLE_OPTS, to set config properties only for the external shuffle service (e.g. "-Dx=y")
# - MONKEY_DAEMON_JAVA_OPTS, to set config properties for all daemons (e.g. "-Dx=y")
# - MONKEY_PUBLIC_DNS, to set the public dns name of the master or workers

# Generic options for the daemons used in the standalone deploy mode
# - MONKEY_CONF_DIR      Alternate conf dir. (Default: ${MONKEY_HOME}/conf)
# - MONKEY_LOG_DIR       Where log files are stored.  (Default: ${MONKEY_HOME}/logs)
# - MONKEY_PID_DIR       Where the pid file is stored. (Default: /tmp)
# - MONKEY_IDENT_STRING  A string representing this instance of monkey. (Default: $USER)
# - MONKEY_NICENESS      The scheduling priority for daemons. (Default: 0)
